Strictness Meets Data Flow
نویسندگان
چکیده
Properties of programs can be formulated using various techniques: dataflow analysis, abstract interpretation and type-like inference systems. This paper reconstructs strictness analysis (establishing when function parameters are evaluated in a lazy language) as a dataflow analysis by expressing the dataflow properties as an effect system. Strictness properties so expressed give a clearer operational understanding and enable a range of additional optimisations including implicational strictness. At first order strictness effects have the expected principality properties (best-property inference) and can be computed simply.
منابع مشابه
Efficient computation of strictness types∗
Amtoft has formulated an “on-line” constraint normalization method for solving a strictness inference problem inspired by Wright. From the syntactic form of the normalized constraints he establishes that every program expression has a unique, most precise (“minimal”) strictness judgement, given fixed values for the strictness annotation in negative position. We show that his on-line normalizati...
متن کاملThe Role of Corporate Governance Mechanisms and the Auditor's Specialty in Debt Contract Strictness
Objective: Violation of contractual conditions leads to the transmission of bad news due to poor performance and the expertise of auditors and regulatory mechanisms can be a factor in adjusting it. In this article, the purpose is to examine the role of strictness in the debt contract and the auditor's expertise. Research Method: In order to study the subject based on the logistic regression mo...
متن کاملStrictness Analysis via Resource Typing
We present a new typing system for strictness analysis of functional programs. The system extends standard typing (including recursive data types) with strictness annotations and subtyping. Strictness typing is shown to be sound with respect to a natural operational semantics. We demonstrate that strictness types can be computed effectively.
متن کاملFlow analysis of lazy higher-order functional programs
In recent years much interest has been shown in a class of functional languages including HASKELL, lazy ML, SASL/KRC/MIRANDA, ALFL, ORWELL, and PONDER. It has been seen that their expressive power is great, programs are compact, and program manipulation and transformation is much easier than with imperative languages or more traditional applicative ones. Common characteristics: they are purely ...
متن کاملHigher Order Demand Propagation
In this report a new backward strictness analysis for functional languages is presented. It is called higher order demand propagation and is applicable to a realistic non-strict functional language, which has a polymorphic type system and supports higher order functions and user definable algebraic data types. This report defines a semantics for higher order demand propagation and relates it to...
متن کامل